package com.jumi.microservice.dto.admin;

import com.jumi.microservice.common.base.dto.BaseResponse;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author wangjingdao
 */
public class OrderGoodsEntityResponse extends BaseResponse {
    @ApiModelProperty("id")
    private Integer id;

    /**
     * 订单编号
     */
    @ApiModelProperty("订单编号")
    private String orderNo;

    /**
     * 买家ID
     */
    @ApiModelProperty("买家ID")
    private Long buyerId;

    /**
     * 收货人ID
     */
    @ApiModelProperty("收货人ID")
    private Long receiverId;

    /**
     * 订单总额
     */
    @ApiModelProperty("订单总额")
    private BigDecimal orderAmount;

    /**
     * 订单状态
     */
    @ApiModelProperty("订单状态")
    private Byte orderStatus;

    /**
     * 订单标识（待发货中的1,2   待收货中的1,2）
     */
    @ApiModelProperty("订单标识")
    private Byte orderStep;

    /**
     * 运费
     */
    @ApiModelProperty("运费")
    private BigDecimal freightFee;

    /**
     * 支付金额
     */
    @ApiModelProperty("支付金额")
    private BigDecimal payAmount;

    /**
     * 支付类型
     */
    @ApiModelProperty("支付类型")
    private Byte payType;

    /**
     * 支付时间
     */
    @ApiModelProperty("支付时间")
    private Date payTime;

    /**
     * 支付单号
     */
    @ApiModelProperty("支付单号")
    private String payNo;

    /**
     * 第三方支付单号
     */
    @ApiModelProperty("第三方支付单号")
    private String thirdPartyPaySn;
    /**
     * 支付失效时间
     */
    @ApiModelProperty("支付失效时间")
    private Date failureTime;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remark;

    /**
     * 下单时间
     */
    @ApiModelProperty("下单时间")
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private Date updateTime;

    /**
     * 商品信息
     */
    @ApiModelProperty("商品信息")
    private List<OrderGoodsResponse> orderGoodsResponses;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public Long getBuyerId() {
        return buyerId;
    }

    public void setBuyerId(Long buyerId) {
        this.buyerId = buyerId;
    }

    public Long getReceiverId() {
        return receiverId;
    }

    public void setReceiverId(Long receiverId) {
        this.receiverId = receiverId;
    }

    public BigDecimal getOrderAmount() {
        return orderAmount;
    }

    public void setOrderAmount(BigDecimal orderAmount) {
        this.orderAmount = orderAmount;
    }

    public Byte getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Byte orderStatus) {
        this.orderStatus = orderStatus;
    }

    public Byte getOrderStep() {
        return orderStep;
    }

    public void setOrderStep(Byte orderStep) {
        this.orderStep = orderStep;
    }

    public BigDecimal getFreightFee() {
        return freightFee;
    }

    public void setFreightFee(BigDecimal freightFee) {
        this.freightFee = freightFee;
    }

    public BigDecimal getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(BigDecimal payAmount) {
        this.payAmount = payAmount;
    }

    public Byte getPayType() {
        return payType;
    }

    public void setPayType(Byte payType) {
        this.payType = payType;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public String getPayNo() {
        return payNo;
    }

    public void setPayNo(String payNo) {
        this.payNo = payNo;
    }

    public String getThirdPartyPaySn() {
        return thirdPartyPaySn;
    }

    public void setThirdPartyPaySn(String thirdPartyPaySn) {
        this.thirdPartyPaySn = thirdPartyPaySn;
    }

    public Date getFailureTime() {
        return failureTime;
    }

    public void setFailureTime(Date failureTime) {
        this.failureTime = failureTime;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public List<OrderGoodsResponse> getOrderGoodsResponses() {
        return orderGoodsResponses;
    }

    public void setOrderGoodsResponses(List<OrderGoodsResponse> orderGoodsResponses) {
        this.orderGoodsResponses = orderGoodsResponses;
    }
}
